//package com.michaelbulava.TFS.vcs.internal.providers;
//
//import com.intellij.openapi.project.Project;
//import com.intellij.openapi.vcs.FilePath;
//import com.intellij.openapi.vcs.changes.ChangelistBuilder;
//import com.michaelbulava.TFS.vcs.internal.ServerStatus;
//import com.michaelbulava.TFS.vcs.internal.StatusVisitor;
//import com.michaelbulava.TFS.vcs.utils.TFSFileUtil;
//import com.microsoft.tfs.core.clients.versioncontrol.soapextensions.Workspace;
//
///**
// * Created by MichaelA on 8/19/2015.
// */
//public class DisconnectedChangelistBuilderStatusVisitor extends StatusVisitor {
//    private final Project myProject;
//    private final ChangelistBuilder myBuilder;
//
//    public DisconnectedChangelistBuilderStatusVisitor(Project project, ChangelistBuilder builder) {
//        this.myProject = project;
//        this.myBuilder = builder;
//    }
//
//    @Override
//    protected void performNotVersion(FilePath filePath, boolean existsLocally, ServerStatus serverStatus) {
//        if (existsLocally)
//            myBuilder.processUnversionedFile(filePath.getVirtualFile());
//    }
//
//    @Override
//    protected void performDeleted(FilePath filePath, boolean existsLocally, ServerStatus serverStatus) {
//
//    }
//
//    @Override
//    protected void performScheduledForAddition(FilePath filePath, boolean existsLocally, ServerStatus serverStatus) {
//
//    }
//
//    @Override
//    protected void performScheduledForDeletion(FilePath filePath, boolean existsLocally, ServerStatus serverStatus) {
//
//    }
//
//    @Override
//    protected void performCheckedOutForEdit(FilePath filePath, boolean existsLocally, ServerStatus serverStatus) {
//
//    }
//
//    @Override
//    protected void performOutOfDate(FilePath filePath, boolean existsLocally, ServerStatus serverStatus) {
//
//    }
//
//    @Override
//    protected void performUpToDate(FilePath filePath, boolean existsLocally, ServerStatus serverStatus) {
//        if(existsLocally)
//            if (TFSFileUtil.isFileWritable(filePath) && serverStatus.IsLocalWorkspace())
//                myBuilder.processModifiedWithoutCheckout(filePath.getVirtualFile());
//            else
//                return;
//        else
//            myBuilder.processLocallyDeletedFile(filePath);
//    }
//
//    @Override
//    protected void performRenamed(FilePath filePath, boolean existsLocally, ServerStatus serverStatus) {
//
//    }
//
//    @Override
//    protected void performRenamedCheckedOut(FilePath filePath, boolean existsLocally, ServerStatus serverStatus) {
//
//    }
//
//    @Override
//    protected void performUndeleted(FilePath filePath, boolean existsLocally, ServerStatus serverStatus) {
//
//    }
//
//    @Override
//    protected void performIgnored(FilePath filePath, boolean existsLocally, ServerStatus serverStatus) {
//        myBuilder.processIgnoredFile(filePath.getVirtualFile());
//    }
//}
